package top.gytf.unifiedcall.common.detial;

import top.gytf.distools.lifecycle.AbstractLifecycle;
import top.gytf.unifiedcall.model.detail.UnifiedCallPackageDetail;

import java.util.Set;

/**
 * 通用实现的统一调用包加载器
 */
public abstract class AbstractUnifiedCallPackageLoader extends AbstractLifecycle implements UnifiedCallPackageLoader {
    protected abstract Set<UnifiedCallPackageDetail> doLoad();

    @Override
    public Set<UnifiedCallPackageDetail> load() {
        assertReady();
        return doLoad();
    }
}
